package com.quartet.modules.user.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.time.LocalDateTime;
import java.util.List;

/**
 * 用户信息返回DTO
 *
 * @author makejava
 * @since 2021-05-04 17:08:13
 */
@Data
@ApiModel(value = "用户信息")
public class TUserInfoResponseDto {

    /**
     * @Fields serialVersionUID
     *
     */
    private static final long serialVersionUID = -4695091599040345302L;
    /**
     * 主键id
     */
    @ApiModelProperty(value = "主键id")
    private Integer userId;

    /**
     * 用户编码
     */
    @ApiModelProperty(value = "用户编码")
    private String userCode;

    /**
     * 用户名称
     */
    @ApiModelProperty(value = "用户名称")
    private String username;

    /**
     * 所属客户编码
     */
    @ApiModelProperty(value = "所属客户编码")
    private String customerCode;

    /**
     * 所属客户名称
     */
    @ApiModelProperty(value = "所属客户名称")
    private String customerName;

    /**
     * 角色id
     */
    @ApiModelProperty(value = "角色id")
    private Long roleId;

    /**
     * 角色名称
     */
    @ApiModelProperty(value = "角色名称")
    private String roleName;

    /**
     * 账号等级
     */
    @ApiModelProperty(value = "账号等级")
    private Integer accountLevel;

    /**
     * 手机号码
     */
    @ApiModelProperty(value = "手机号码")
    private String phone;

    /**
     * 邮箱
     */
    @ApiModelProperty(value = "邮箱")
    private String email;

    /**
     * 联系人
     */
    @ApiModelProperty(value = "联系人")
    private String contacts;

    /**
     * 密码
     */
    @ApiModelProperty(value = "密码")
    private String password;

    /**
     * 确认密码
     */
    @ApiModelProperty(value = "确认密码")
    private String passwordConfirm;

    /**
     * 用户状态 0：激活 1：禁用
     */
    @ApiModelProperty(value = "用户状态 0：激活 1：禁用")
    private Integer userStatus;

    /**
     * 注册时间
     */
    @ApiModelProperty(value = "注册时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime registrationTime;

    /**
     * 过期时间
     */
    @ApiModelProperty(value = "过期时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime expireTime;

    /**
     * 公司名称
     */
    @ApiModelProperty(value = "公司名称")
    private String corporateName;

    /**
     * 行业应用
     */
    @ApiModelProperty(value = "行业应用")
    private String industryApplication;

    /**
     * 公司地址
     */
    @ApiModelProperty(value = "公司地址")
    private String companyAddress;

    /**
     * 订单编码
     */
    @ApiModelProperty(value = "公司地址")
    private String orderCode;

    /**
     * 是否平台用户 0：是 1：不是
     */
    @ApiModelProperty(value = "是否平台用户 0：是 1：不是")
    private String isApplyUser;

    /**
     * 删除标识 0未删除 1删除
     */
    @ApiModelProperty(value = "删除标识 0未删除 1删除")
    private Integer deleted;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;

    /**
     * 修改时间
     */
    @ApiModelProperty(value = "修改时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;

}
